Today computers, microwaves, televisions, cellular phones, automobiles and other appliances and machines usually contain at least one microprocessor or microprocessor-based chip that essentially acts as their "brain" to perform arithmetic and logic and to control operations. The operation of the microprocessor is synchronized by internal or external clocking, or both, from pulses generated by various types of clock sources such as a crystal oscillator, a crystal resonator, a complementary metal-oxide semiconductor (CMOS) clock, a resistor-capacitor (RC) oscillator and an inductor-capacitor (LC) oscillator. Typically, either the crystal oscillator or crystal resonator is chosen to provide clock pulses because they are capable of generating very accurate and stable electric signal frequencies.
To guard against a control failure or a system lockup that may be invoked by electrical noise, electrostatic discharge, power glitches, software hang up or clock failure, the microprocessor-based chip contains a watchdog timer that prevents equipment faults or a computer program from looping endlessly or becoming idle because of program errors. In operation, the watchdog timer would generate and send out a signal to reset the microprocessor and to disable the microprocessor-based chip after a pre-set time-out period has elapsed during which the microprocessor-based chip has experienced such control failure or system lockup. This time-out period may range from nanoseconds, microseconds, milliseconds, seconds, minutes, hours or days, depending on a particular application.
Similar to the microprocessor of the microprocessor-based chip, the watchdog timer within such chip also requires a clock signal having clock pulses in order to function. Both the microprocessor and the watchdog timer may receive clock pulses from the same clock source or separate clock sources, depending on a particular microprocessor-based system. In a microprocessor-based system where both the microprocessor and watchdog timer share the same clock source such as a crystal controlled oscillator, if the crystal is dislodged while such system is operating within a harsh environment, the watchdog timer would not be able to reset the microprocessor and to disable the microprocessor-based chip. As a result, accidents may occur.
For example, a microprocessor-based chip having a watchdog timer may be installed within a garage door opening and closing system in order to control motor operations of such system to open and close the garage door. In this garage door opening and closing system, both the microprocessor and the watchdog timer are clocked by the same clock source. While the garage door is closing, the clock source may malfunction and thus would fail to provide any clock pulses. If so, the garage door would continue to move downward and towards the ground because the watchdog timer has become inoperative and thus could not send out a reset signal to effectively stop the downward movement of the garage door. If there is an object such as a car locating between the bottom horizontal edge of the garage door and the ground, such horizontal bottom edge would damage the car due to the weight and downward movement of the garage door. This is obviously undesirable.
Other conventional microprocessor-based systems may have more than one clock source. In these systems, both the microprocessor and the watchdog timer may be clocked separately by different clock sources. If two available clock sources are selected to separately clock the microprocessor and the watchdog timer, such selections are fixed. Thus, when the clock source providing clock pulses to the microprocessor is broken and the clock source providing clock pulses to the watchdog timer is not broken, the watchdog timer is able to generate and send out a reset signal but the microprocessor is unable to operate. In addition, when the clock source providing clock pulses to the watchdog timer is broken and the clock source providing clock pulses to the microprocessor is not broken, the microprocessor-based system has no protection against a system malfunction that would have been detected by a functioning watchdog timer. As a result, accidents or other undesirable effects may follow.